// 此js文件管理关于当前设备的机型系统信息
export const getSystemInfo = async () => {
	// 设备系统信息
	let systemInfomations = await uni.getSystemInfoAsync()

	// 机型适配比例系数
	let scaleFactor = 750 / systemInfomations.windowWidth

	// 当前机型-屏幕高度
	let windowHeight = systemInfomations.windowHeight * scaleFactor

	// 当前机型-屏幕宽度
	let windowWidth = systemInfomations.windowWidth * scaleFactor

	// 状态栏高度
	let statusBarHeight = (systemInfomations.statusBarHeight) * scaleFactor

	// 导航栏高度 此导航栏只针对微信小程序有效，其他平台自定义导航栏需要使用状态栏高度+自定义文本高度
	let navHeight = 0

	// 导航栏总高度
	let navTotalHeight = 0

	// 微信小程序头部胶囊信息
	// #ifdef MP-WEIXIN
	const menuButtonInfo = uni.getMenuButtonBoundingClientRect()

	// 胶囊高度
	let menuButtonHeight = menuButtonInfo.height * scaleFactor

	// 胶囊宽度
	let menuButtonWidth = menuButtonInfo.width * scaleFactor

	// 胶囊上边界的坐标
	let menuButtonTop = menuButtonInfo.top * scaleFactor

	// 胶囊下边界的坐标
	let menuButtonBottom = menuButtonInfo.bottom * scaleFactor

	// 胶囊左边界的坐标
	let menuButtonLeft = menuButtonInfo.left * scaleFactor

	// 胶囊右边界的坐标
	let menuButtonRight = menuButtonInfo.right * scaleFactor

	// 微信小程序中导航栏高度 = 胶囊高度 + (顶部距离 - 状态栏高度) * 2
	navHeight = menuButtonHeight + (menuButtonTop - statusBarHeight) * 2

	//微信小程序头部导航栏总高度
	navTotalHeight = navHeight + statusBarHeight

	// #endif

	// 返回微信小程序专有的信息
	// #ifdef MP-WEIXIN
	return {
		scaleFactor,
		windowHeight,
		windowWidth,
		statusBarHeight,
		menuButtonHeight,
		menuButtonWidth,
		menuButtonBottom,
		menuButtonTop,
		menuButtonLeft,
		menuButtonRight,
		navHeight,
		navTotalHeight
	}
	// #endif

	// 返回所有非微信小程序平台共有的信息
	// #ifndef MP-WEIXIN
	return {
		scaleFactor,
		windowHeight,
		windowWidth,
		statusBarHeight,
	}
	// #endif

}